/*
 *	This file is part of qpOASES.
 *
 *	qpOASES -- An Implementation of the Online Active Set Strategy.
 *	Copyright (C) 2007-2017 by Hans Joachim Ferreau, Andreas Potschka,
 *	Christian Kirches et al. All rights reserved.
 *
 *	qpOASES is free software; you can redistribute it and/or
 *	modify it under the terms of the GNU Lesser General Public
 *	License as published by the Free Software Foundation; either
 *	version 2.1 of the License, or (at your option) any later version.
 *
 *	qpOASES is distributed in the hope that it will be useful,
 *	but WITHOUT ANY WARRANTY; without even the implied warranty of
 *	MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
 *	See the GNU Lesser General Public License for more details.
 *
 *	You should have received a copy of the GNU Lesser General Public
 *	License along with qpOASES; if not, write to the Free Software
 *	Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
 *
 */


/**
 *	\author Andrea Zanelli
 *	\version 3.2
 *	\date 2022
 *
 *	QP data generated by a Python script for testing purposes.
 */


USING_NAMESPACE_QPOASES

#define NV 100
#define NC 10

const real_t Inf = INFTY;

sparse_int_t H_ri[] = {
    
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
    11,
    12,
    13,
    14,
    15,
    16,
    17,
    18,
    19,
    20,
    21,
    22,
    23,
    24,
    25,
    26,
    27,
    28,
    29,
    30,
    31,
    32,
    33,
    34,
    35,
    36,
    37,
    38,
    39,
    40,
    41,
    42,
    43,
    44,
    45,
    46,
    47,
    48,
    49,
    50,
    51,
    52,
    53,
    54,
    55,
    56,
    57,
    58,
    59,
    60,
    61,
    62,
    63,
    64,
    65,
    66,
    67,
    68,
    69,
    70,
    71,
    72,
    73,
    74,
    75,
    76,
    77,
    78,
    79,
    80,
    81,
    82,
    83,
    84,
    85,
    86,
    87,
    88,
    89,
    90,
    91,
    92,
    93,
    94,
    95,
    96,
    97,
    98,
    99,
};

sparse_int_t H_cp[] = { 
    
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
    11,
    12,
    13,
    14,
    15,
    16,
    17,
    18,
    19,
    20,
    21,
    22,
    23,
    24,
    25,
    26,
    27,
    28,
    29,
    30,
    31,
    32,
    33,
    34,
    35,
    36,
    37,
    38,
    39,
    40,
    41,
    42,
    43,
    44,
    45,
    46,
    47,
    48,
    49,
    50,
    51,
    52,
    53,
    54,
    55,
    56,
    57,
    58,
    59,
    60,
    61,
    62,
    63,
    64,
    65,
    66,
    67,
    68,
    69,
    70,
    71,
    72,
    73,
    74,
    75,
    76,
    77,
    78,
    79,
    80,
    81,
    82,
    83,
    84,
    85,
    86,
    87,
    88,
    89,
    90,
    91,
    92,
    93,
    94,
    95,
    96,
    97,
    98,
    99,
    100,
};

real_t H_val[] = {
    
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
};

sparse_int_t A_ri[] = {
    
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
};

sparse_int_t A_cp[] = {
    
    0,
    1,
    2,
    3,
    4,
    5,
    6,
    7,
    8,
    9,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
    10,
};

real_t A_val[] = {
    
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
};

real_t g[] = {
    
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
};

real_t lb[] = {
    
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
    -10000000000.0,
};

real_t ub[] = {
    
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
    10000000000.0,
};

real_t lbA[] = {
    
    -1.0,
    -1.0,
    -1.0,
    -1.0,
    -1.0,
    -1.0,
    -1.0,
    -1.0,
    -1.0,
    -1.0,
};

real_t ubA[] = {
    
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    1.0,
    };

long H_nnz = 100; 
long A_nnz = 10;